<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<TITLE>
ModifiedFloodfill
</TITLE>


<LINK REL ="stylesheet" TYPE="text/css" HREF="../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="ModifiedFloodfill";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">
<HR>


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/ModifiedFloodfill.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../maze/ai/LeftWallFollower.html" title="class in maze.ai"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../maze/ai/ModifiedFloodfill.Direction2.html" title="enum in maze.ai"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../index.html?maze/ai/ModifiedFloodfill.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="ModifiedFloodfill.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
maze.ai</FONT>
<BR>
Class ModifiedFloodfill</H2>
<PRE>
java.lang.Object
  <IMG SRC="../../resources/inherit.gif" ALT="extended by "><A HREF="../../maze/ai/RobotBase.html" title="class in maze.ai">maze.ai.RobotBase</A>
      <IMG SRC="../../resources/inherit.gif" ALT="extended by "><B>maze.ai.ModifiedFloodfill</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.12"><B>ModifiedFloodfill</B></A><DT>extends <A HREF="../../maze/ai/RobotBase.html" title="class in maze.ai">RobotBase</A></DL>
</PRE>

<P>
<HR>

<P>
<!-- ======== NESTED CLASS SUMMARY ======== -->

<A NAME="nested_class_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Nested Class Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;class</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.Direction2.html" title="enum in maze.ai">ModifiedFloodfill.Direction2</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<!-- =========== FIELD SUMMARY =========== -->

<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;int[][]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#directions">directions</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;int[][]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#distance">distance</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean[][]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#explored">explored</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#goal">goal</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;<A HREF="../../maze/model/MazeModel.html" title="class in maze.model">MazeModel</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#maze">maze</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;java.util.ArrayList&lt;<A HREF="../../maze/ai/RobotStep.html" title="enum in maze.ai">RobotStep</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#moveQueue">moveQueue</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#speedRunCapable">speedRunCapable</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private static&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#TO_CENTER">TO_CENTER</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private static&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#TO_START">TO_START</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#turbo">turbo</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#USELESS">USELESS</A></B></CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_maze.ai.RobotBase"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class maze.ai.<A HREF="../../maze/ai/RobotBase.html" title="class in maze.ai">RobotBase</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../maze/ai/RobotBase.html#robotLocation">robotLocation</A>, <A HREF="../../maze/ai/RobotBase.html#speedRun">speedRun</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#ModifiedFloodfill()">ModifiedFloodfill</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#atGoal()">atGoal</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if the current location of the robot is its current
 destination.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#blockOutCenter()">blockOutCenter</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This helper function should only be called when first entering the center
 goal.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#checkWalls()">checkWalls</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Updates the algorithm's memory of the maze based upon the walls in the
 current cell.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#floodfill()">floodfill</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;<A HREF="../../maze/model/Direction.html" title="enum in maze.model">Direction</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#getBestDirection()">getBestDirection</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the best direction to go, according to Floodfill, from the current
 MazeCell.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#getDirection(maze.model.MazeCell)">getDirection</A></B>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This function loads a value into the directions array based upon the cell
 passed and the value in i</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#getDistance(maze.model.MazeCell)">getDistance</A></B>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the distance of the desired MazeCell</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#getExplored()">getExplored</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the explored flag of the current location.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#getExplored(maze.model.MazeCell)">getExplored</A></B>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;cell)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the explored flag of the given location.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#getNeighborDistance(maze.model.MazeCell, maze.model.Direction)">getNeighborDistance</A></B>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here,
                                       <A HREF="../../maze/model/Direction.html" title="enum in maze.model">Direction</A>&nbsp;direction)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the distance of the MazeCell adjacent to the passed MazeCell and
 is adjacent in the specified direction.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#getNeighborExplored(maze.model.Direction)">getNeighborExplored</A></B>(<A HREF="../../maze/model/Direction.html" title="enum in maze.model">Direction</A>&nbsp;direction)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the explored flag of the current location's neighbor in the given
 direction.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#getNeighborExplored(maze.model.MazeCell, maze.model.Direction)">getNeighborExplored</A></B>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here,
                                       <A HREF="../../maze/model/Direction.html" title="enum in maze.model">Direction</A>&nbsp;direction)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the explored flag of the given location's neighbor.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int[][]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#getUnderstandingInt()">getUnderstandingInt</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the instance of how the algorithm understands the maze.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#hasSameDirection(maze.model.MazeCell, maze.ai.ModifiedFloodfill.Direction2)">hasSameDirection</A></B>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here,
                                 <A HREF="../../maze/ai/ModifiedFloodfill.Direction2.html" title="enum in maze.ai">ModifiedFloodfill.Direction2</A>&nbsp;dir)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This function loads a value into the directions array based upon the cell
 passed and the value in i</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#initialize()">initialize</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initializes the algorithm for use.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#isInTurboMode()">isInTurboMode</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the "turbo" state of the algorithm.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#isSameDirection(maze.model.MazeCell, maze.ai.ModifiedFloodfill.Direction2)">isSameDirection</A></B>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here,
                               <A HREF="../../maze/ai/ModifiedFloodfill.Direction2.html" title="enum in maze.ai">ModifiedFloodfill.Direction2</A>&nbsp;dir)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This function loads a value into the directions array based upon the cell
 passed and the value in i</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#modifiedFloodfill()">modifiedFloodfill</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#neighborIsPoisoned(maze.model.MazeCell, maze.model.Direction)">neighborIsPoisoned</A></B>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;cell,
                                     <A HREF="../../maze/model/Direction.html" title="enum in maze.model">Direction</A>&nbsp;dir)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../maze/ai/RobotStep.html" title="enum in maze.ai">RobotStep</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#nextStep()">nextStep</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the next step that the robot should take.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#setDirection(maze.model.MazeCell, int)">setDirection</A></B>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here,
                         int&nbsp;i)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This function loads a value into the directions array based upon the cell
 passed and the value in i</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#setDistance(maze.model.MazeCell, int)">setDistance</A></B>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here,
                       int&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the distance of the desired MazeCell to the value provided</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#setExplored()">setExplored</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the explored flag of the current location to true.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#setRobotLocation(maze.model.RobotModel)">setRobotLocation</A></B>(<A HREF="../../maze/model/RobotModel.html" title="class in maze.model">RobotModel</A>&nbsp;model)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the instance of the robot model to use.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../maze/ai/ModifiedFloodfill.html#toString()">toString</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a string describing this class</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_maze.ai.RobotBase"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class maze.ai.<A HREF="../../maze/ai/RobotBase.html" title="class in maze.ai">RobotBase</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../maze/ai/RobotBase.html#getRobotListModel()">getRobotListModel</A>, <A HREF="../../maze/ai/RobotBase.html#getUnderstandingDir()">getUnderstandingDir</A>, <A HREF="../../maze/ai/RobotBase.html#setSpeedRun(boolean)">setSpeedRun</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ============ FIELD DETAIL =========== -->

<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="distance"><!-- --></A><H3>
distance</H3>
<PRE>
private int[][] <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.14"><B>distance</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>

<A NAME="explored"><!-- --></A><H3>
explored</H3>
<PRE>
private boolean[][] <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.15"><B>explored</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>

<A NAME="directions"><!-- --></A><H3>
directions</H3>
<PRE>
private int[][] <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.16"><B>directions</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>

<A NAME="moveQueue"><!-- --></A><H3>
moveQueue</H3>
<PRE>
private java.util.ArrayList&lt;<A HREF="../../maze/ai/RobotStep.html" title="enum in maze.ai">RobotStep</A>&gt; <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.17"><B>moveQueue</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>

<A NAME="turbo"><!-- --></A><H3>
turbo</H3>
<PRE>
private boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.18"><B>turbo</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>

<A NAME="USELESS"><!-- --></A><H3>
USELESS</H3>
<PRE>
private static final int <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.19"><B>USELESS</B></A></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#maze.ai.ModifiedFloodfill.USELESS">Constant Field Values</A></DL>
</DL>
<HR>

<A NAME="maze"><!-- --></A><H3>
maze</H3>
<PRE>
private <A HREF="../../maze/model/MazeModel.html" title="class in maze.model">MazeModel</A> <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.20"><B>maze</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>

<A NAME="goal"><!-- --></A><H3>
goal</H3>
<PRE>
private boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.21"><B>goal</B></A></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>

<A NAME="TO_CENTER"><!-- --></A><H3>
TO_CENTER</H3>
<PRE>
private static final boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.22"><B>TO_CENTER</B></A></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#maze.ai.ModifiedFloodfill.TO_CENTER">Constant Field Values</A></DL>
</DL>
<HR>

<A NAME="TO_START"><!-- --></A><H3>
TO_START</H3>
<PRE>
private static final boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.23"><B>TO_START</B></A></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../constant-values.html#maze.ai.ModifiedFloodfill.TO_START">Constant Field Values</A></DL>
</DL>
<HR>

<A NAME="speedRunCapable"><!-- --></A><H3>
speedRunCapable</H3>
<PRE>
private boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.24"><B>speedRunCapable</B></A></PRE>
<DL>
<DL>
</DL>
</DL>

<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="ModifiedFloodfill()"><!-- --></A><H3>
ModifiedFloodfill</H3>
<PRE>
public <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.12"><B>ModifiedFloodfill</B></A>()</PRE>
<DL>
</DL>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="toString()"><!-- --></A><H3>
toString</H3>
<PRE>
public java.lang.String <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.30"><B>toString</B></A>()</PRE>
<DL>
<DD>Returns a string describing this class
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE>toString</CODE> in class <CODE>java.lang.Object</CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="initialize()"><!-- --></A><H3>
initialize</H3>
<PRE>
public void <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.40"><B>initialize</B></A>()</PRE>
<DL>
<DD>Initializes the algorithm for use. This should be called before any run is
 started.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../maze/ai/RobotBase.html#initialize()">initialize</A></CODE> in class <CODE><A HREF="../../maze/ai/RobotBase.html" title="class in maze.ai">RobotBase</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="nextStep()"><!-- --></A><H3>
nextStep</H3>
<PRE>
public <A HREF="../../maze/ai/RobotStep.html" title="enum in maze.ai">RobotStep</A> <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.71"><B>nextStep</B></A>()</PRE>
<DL>
<DD>Returns the next step that the robot should take. This is called by the
 controller.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../maze/ai/RobotBase.html#nextStep()">nextStep</A></CODE> in class <CODE><A HREF="../../maze/ai/RobotBase.html" title="class in maze.ai">RobotBase</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getNeighborExplored(maze.model.Direction)"><!-- --></A><H3>
getNeighborExplored</H3>
<PRE>
private boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.127"><B>getNeighborExplored</B></A>(<A HREF="../../maze/model/Direction.html" title="enum in maze.model">Direction</A>&nbsp;direction)</PRE>
<DL>
<DD>Returns the explored flag of the current location's neighbor in the given
 direction.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getNeighborExplored(maze.model.MazeCell, maze.model.Direction)"><!-- --></A><H3>
getNeighborExplored</H3>
<PRE>
private boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.159"><B>getNeighborExplored</B></A>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here,
                                    <A HREF="../../maze/model/Direction.html" title="enum in maze.model">Direction</A>&nbsp;direction)</PRE>
<DL>
<DD>Returns the explored flag of the given location's neighbor.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getExplored(maze.model.MazeCell)"><!-- --></A><H3>
getExplored</H3>
<PRE>
private boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.190"><B>getExplored</B></A>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;cell)</PRE>
<DL>
<DD>Returns the explored flag of the given location.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getExplored()"><!-- --></A><H3>
getExplored</H3>
<PRE>
private boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.198"><B>getExplored</B></A>()</PRE>
<DL>
<DD>Returns the explored flag of the current location.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setExplored()"><!-- --></A><H3>
setExplored</H3>
<PRE>
private void <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.206"><B>setExplored</B></A>()</PRE>
<DL>
<DD>Sets the explored flag of the current location to true.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getBestDirection()"><!-- --></A><H3>
getBestDirection</H3>
<PRE>
private <A HREF="../../maze/model/Direction.html" title="enum in maze.model">Direction</A> <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.216"><B>getBestDirection</B></A>()</PRE>
<DL>
<DD>Returns the best direction to go, according to Floodfill, from the current
 MazeCell. This algorithm biases in the following order: Straight, North,
 East, West, South
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getNeighborDistance(maze.model.MazeCell, maze.model.Direction)"><!-- --></A><H3>
getNeighborDistance</H3>
<PRE>
private int <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.298"><B>getNeighborDistance</B></A>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here,
                                <A HREF="../../maze/model/Direction.html" title="enum in maze.model">Direction</A>&nbsp;direction)</PRE>
<DL>
<DD>Returns the distance of the MazeCell adjacent to the passed MazeCell and
 is adjacent in the specified direction.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getDistance(maze.model.MazeCell)"><!-- --></A><H3>
getDistance</H3>
<PRE>
private int <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.329"><B>getDistance</B></A>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here)</PRE>
<DL>
<DD>Returns the distance of the desired MazeCell
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setDistance(maze.model.MazeCell, int)"><!-- --></A><H3>
setDistance</H3>
<PRE>
private void <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.337"><B>setDistance</B></A>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here,
                         int&nbsp;value)</PRE>
<DL>
<DD>Sets the distance of the desired MazeCell to the value provided
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="floodfill()"><!-- --></A><H3>
floodfill</H3>
<PRE>
private void <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.342"><B>floodfill</B></A>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setDirection(maze.model.MazeCell, int)"><!-- --></A><H3>
setDirection</H3>
<PRE>
private void <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.495"><B>setDirection</B></A>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here,
                          int&nbsp;i)</PRE>
<DL>
<DD>This function loads a value into the directions array based upon the cell
 passed and the value in i
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getDirection(maze.model.MazeCell)"><!-- --></A><H3>
getDirection</H3>
<PRE>
private int <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.504"><B>getDirection</B></A>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here)</PRE>
<DL>
<DD>This function loads a value into the directions array based upon the cell
 passed and the value in i
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="isSameDirection(maze.model.MazeCell, maze.ai.ModifiedFloodfill.Direction2)"><!-- --></A><H3>
isSameDirection</H3>
<PRE>
private boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.513"><B>isSameDirection</B></A>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here,
                                <A HREF="../../maze/ai/ModifiedFloodfill.Direction2.html" title="enum in maze.ai">ModifiedFloodfill.Direction2</A>&nbsp;dir)</PRE>
<DL>
<DD>This function loads a value into the directions array based upon the cell
 passed and the value in i
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="hasSameDirection(maze.model.MazeCell, maze.ai.ModifiedFloodfill.Direction2)"><!-- --></A><H3>
hasSameDirection</H3>
<PRE>
private boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.529"><B>hasSameDirection</B></A>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;here,
                                 <A HREF="../../maze/ai/ModifiedFloodfill.Direction2.html" title="enum in maze.ai">ModifiedFloodfill.Direction2</A>&nbsp;dir)</PRE>
<DL>
<DD>This function loads a value into the directions array based upon the cell
 passed and the value in i
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="blockOutCenter()"><!-- --></A><H3>
blockOutCenter</H3>
<PRE>
private void <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.540"><B>blockOutCenter</B></A>()</PRE>
<DL>
<DD>This helper function should only be called when first entering the center
 goal. Sets the maze knowledge of the algorithm to think that there are no
 other ways out of the center because according the American rules there is
 only one entrance/exit associated with the goal.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="atGoal()"><!-- --></A><H3>
atGoal</H3>
<PRE>
private boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.575"><B>atGoal</B></A>()</PRE>
<DL>
<DD>Returns true if the current location of the robot is its current
 destination.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="checkWalls()"><!-- --></A><H3>
checkWalls</H3>
<PRE>
private void <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.596"><B>checkWalls</B></A>()</PRE>
<DL>
<DD>Updates the algorithm's memory of the maze based upon the walls in the
 current cell.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="isInTurboMode()"><!-- --></A><H3>
isInTurboMode</H3>
<PRE>
public boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.635"><B>isInTurboMode</B></A>()</PRE>
<DL>
<DD>Returns the "turbo" state of the algorithm. Will be true when areas are
 being traversed after they have been explored before.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../maze/ai/RobotBase.html#isInTurboMode()">isInTurboMode</A></CODE> in class <CODE><A HREF="../../maze/ai/RobotBase.html" title="class in maze.ai">RobotBase</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getUnderstandingInt()"><!-- --></A><H3>
getUnderstandingInt</H3>
<PRE>
public int[][] <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.645"><B>getUnderstandingInt</B></A>()</PRE>
<DL>
<DD>Returns the instance of how the algorithm understands the maze. For
 Floodfill this is an integer for each cell representing the expected
 distance from the center.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../maze/ai/RobotBase.html#getUnderstandingInt()">getUnderstandingInt</A></CODE> in class <CODE><A HREF="../../maze/ai/RobotBase.html" title="class in maze.ai">RobotBase</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setRobotLocation(maze.model.RobotModel)"><!-- --></A><H3>
setRobotLocation</H3>
<PRE>
public void <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.654"><B>setRobotLocation</B></A>(<A HREF="../../maze/model/RobotModel.html" title="class in maze.model">RobotModel</A>&nbsp;model)</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../maze/ai/RobotBase.html#setRobotLocation(maze.model.RobotModel)">RobotBase</A></CODE></B></DD>
<DD>Sets the instance of the robot model to use.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../maze/ai/RobotBase.html#setRobotLocation(maze.model.RobotModel)">setRobotLocation</A></CODE> in class <CODE><A HREF="../../maze/ai/RobotBase.html" title="class in maze.ai">RobotBase</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="modifiedFloodfill()"><!-- --></A><H3>
modifiedFloodfill</H3>
<PRE>
private void <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.660"><B>modifiedFloodfill</B></A>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="neighborIsPoisoned(maze.model.MazeCell, maze.model.Direction)"><!-- --></A><H3>
neighborIsPoisoned</H3>
<PRE>
private boolean <A HREF="../../src-html/maze/ai/ModifiedFloodfill.html#line.842"><B>neighborIsPoisoned</B></A>(<A HREF="../../maze/model/MazeCell.html" title="class in maze.model">MazeCell</A>&nbsp;cell,
                                   <A HREF="../../maze/model/Direction.html" title="enum in maze.model">Direction</A>&nbsp;dir)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/ModifiedFloodfill.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../maze/ai/LeftWallFollower.html" title="class in maze.ai"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../maze/ai/ModifiedFloodfill.Direction2.html" title="enum in maze.ai"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../index.html?maze/ai/ModifiedFloodfill.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="ModifiedFloodfill.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>

</BODY>
</HTML>
